package LeetCode.leetcode;

/**
 * 罗马数字转整数
 *
 * @author: leiwenkang02@meituan.com
 * @date: 2018/9/19
 * @time: 20:44
 */
public class Test13罗马数字转整数 {
    public int romanToInt(String s) {
        if (s == null || s.length() == 0) {
            return 0;
        }
        int sum = 0;
        for (int i = 0; i < s.length(); i++) {
            if (s.charAt(i) == 'I') {
                sum += 1;
            }
            if (s.charAt(i) == 'V') {
                sum += 5;
            }
            if (s.charAt(i) == 'X') {
                sum += 10;
            }
            if (s.charAt(i) == 'L') {
                sum += 50;
            }
            if (s.charAt(i) == 'C') {
                sum += 100;
            }
            if (s.charAt(i) == 'D') {
                sum += 500;
            }
            if (s.charAt(i) == 'M') {
                sum += 1000;
            }
        }
        if (s.indexOf("IV") != -1) {
            sum -= 2;
        }
        if (s.indexOf("IX") != -1) {
            sum -= 2;
        }
        if (s.indexOf("XL") != -1) {
            sum -= 20;
        }
        if (s.indexOf("XC") != -1) {
            sum -= 20;
        }
        if (s.indexOf("CD") != -1) {
            sum -= 200;
        }
        if (s.indexOf("CM") != -1) {
            sum -= 200;
        }
        return sum;
    }
}
